Cloud computing relates to the sharing of computing resources that are generally accessed via the Internet. In particular, cloud computing infrastructure allows users to access a shared pool of computing resources, such as servers, storage devices, networks, applications, and/or other computing based services. By doing so, users, such as individuals and/or enterprises, are able to access computing resources on demand that are located at remote locations in order to perform a variety computing functions that include storing and/or processing computing data. For enterprise and other organization users, cloud computing provides flexibility in accessing cloud computing resources without accruing up-front costs, such as purchasing network equipment, and investing time in establishing a private network infrastructure. Instead, by utilizing cloud computing resources, users are able redirect their resources to focus on core business functions.
In today's communication networks, examples of cloud computing services a user may utilize include software as a service (SaaS) and platform as a service (PaaS) technologies. SaaS is a delivery model that provides software as a service rather than an end product. Instead of utilizing local network or individual software installations, software is typically licensed on a subscription basis, hosted on a remote machine, and accessed as needed. For example, users are generally able to access a variety of business and/or information technology (IT) related software via a web browser. PaaS acts as an extension of SaaS that goes beyond providing software services by offering customizability and expandability features to meet a user's needs. For example, PaaS can provide a cloud-based developmental platform for users to develop, modify, and/or customize applications and/or automate business operations without maintaining network infrastructure and/or allocating computing resources normally associated with these functions.
Within the context of cloud computing solutions, support personnel may be asked to deal with higher expectations of response time to infrastructure issues. The goal of most business systems and cloud computing systems in particular is very high availability. Accordingly, users of business systems have grown accustom to nearly 100% availability of all business functions. One important aspect of maintaining such high availability is conformance with service level agreements (SLAs). SLAs, as the name implies, generally represent an agreement between a service provider (either internal, external, or a combination thereof) and a consumer of a service. The agreement defines the level of service expected from the service provider by that consumer and is typically viewed by the customer as a guarantee of that level of service. For example, when used as a call center metric, service level measures the percentage of incoming calls that are answered live in an established amount of time (e.g., wait time less than 5 minutes for 90% of calls). If an SLA is routinely out of schedule it may mean that the SLA was not properly defined, more resources (e.g., call center operators) are required, or the trouble shooting of an event was not properly managed. The disclosed techniques for SLA definition and visualization address these and other issues.